#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>

QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();

private:
    Ui::MainWindow *ui;
    void setupClientMode();
    void setupServerMode();
    void sendFile(const QString &filePath);
    void receiveFile();
    void encryptData(QByteArray &data);
    void decryptData(QByteArray &data);
    void handleNewConnection();
    void handleDisconnection();
    void manageClientConnections();
};
#endif // MAINWINDOW_H
